1. Field
The disclosure relates to a method, system, and article of manufacture for storing data.
2. Background
A cache is a high-speed storage mechanism that can be either a reserved section of main memory or an independent high-speed storage device. Computational platforms may use memory caching or disk caching.
A memory cache, also referred to as Random Access Memory (RAM) cache, may be a portion of memory made of high-speed static RAM (SRAM) instead of the slower and less expensive dynamic RAM (DRAM) used for main memory. Memory caching is effective because many programs access the same data or instructions over and over. By keeping as much of information that is likely to be accessed in SRAM, a computational platform may avoid accessing the slower DRAM.
Certain memory caches may be built into the architecture of microprocessors. Such internal memory caches may be referred to as Level 1 (L1) caches. Certain microprocessors are also coupled with external cache memory, referred to as Level 2 (L2) caches. In certain computational platforms, the L1 and L2 caches are located between the Central Processing Unit (CPU) and the main memory. Like L1 caches, L2 caches may be composed of SRAM but may have a larger storage capacity than L1 caches.
Disk caching may operate under principles that are similar to as memory caching, but instead of using high-speed SRAM a disk cache may be implemented in the main memory. In certain systems, data that is likely to be accessed frequently is stored in the disk cache implemented in the main memory. When a program needs to access data from the disk, the program may first check the disk cache to determine whether the data is present in the disk cache. Disk caching can improve the performance of applications, because accessing a byte of data in main memory can be much faster than accessing a byte of data in a hard disk. Other techniques of caching beyond memory caching and disk caching may be used in computing platforms.